const char *s_graphics = "\
function LoadTexture(name, filepath, maskRed = -1, maskGreen = -1, maskBlue = -1, uWrapMode = TextureWrapMode.Clamp, vWrapMode = TextureWrapMode.Clamp)	\n\
{																									\n\
	local texture = Texture();																		\n\
	texture.Load(name, filepath, maskRed, maskGreen, maskBlue, uWrapMode, vWrapMode);				\n\
	return texture;																					\n\
}																									\n\
																									\n\
function UnloadTexture(texture)																		\n\
{																									\n\
	UnloadTextureA(texture.name);																	\n\
}																									\n\
																									\n\
function LoadFont(name, filepath, size)																\n\
{																									\n\
	local font = Font();																			\n\
	font.Load(name, filepath, size);																\n\
	return font;																					\n\
}																									\n\
																									\n\
function UnloadFont(font)																			\n\
{																									\n\
	UnloadFontA(font.name);																			\n\
}																									\n\
																									\n\
function DrawTexture(texture, x, y, width = -1, height = -1)										\n\
{																									\n\
	DrawTextureA(texture.name, x, y, width, height);												\n\
}																									\n\
																									\n\
function DrawTextureArea(texture, x, y, width = -1, height = -1, areaX = -1, areaY = -1, areaWidth = -1, areaHeight = -1)\n\
{																									\n\
	DrawTextureAreaA(texture.name, x, y, width, height, areaX, areaY, areaWidth, areaHeight);		\n\
}																									\n\
																									\n\
function DrawText(text, x, y, font)																	\n\
{																									\n\
	DrawTextA(text, x, y, font.name);																\n\
}																									\n\
																									\n\
function DrawMesh(mesh)																				\n\
{																									\n\
	DrawMeshA(mesh.name);																			\n\
}																									\n\
																									\n\
function DrawModel(model)																			\n\
{																									\n\
	DrawModelA(model.name);																			\n\
}																									\n\
																									\n\
function DrawSprite(sprite)																			\n\
{																									\n\
	DrawSpriteA(sprite.name);																		\n\
}																									\n\
																									\n\
function DrawCamera(camera)																			\n\
{																									\n\
	DrawCameraA(camera.name);																		\n\
}																									\n\
																									\n\
function TextWidth(text, font)																		\n\
{																									\n\
	return TextWidthA(text, font.name);																\n\
}																									\n\
																									\n\
function TextHeight(text, font)																		\n\
{																									\n\
	return TextHeightA(text, font.name);															\n\
}																									\n\
																									\n\
function BindTexture(texture)																		\n\
{																									\n\
	if (texture != null)																			\n\
		BindTextureA(texture.name);																	\n\
	else																							\n\
		BindTextureA(\"\");																			\n\
}																									\n\
																									\n\
function CreateCubeMesh(name, width, height, depth, xOffset = -0.5, yOffset = -0.5, zOffset = -0.5)	\n\
{																									\n\
	local mesh = Mesh(name, false);																	\n\
	CreateCubeMeshA(name, width, height, depth, xOffset, yOffset, zOffset);							\n\
	return mesh;																					\n\
}																									\n\
																									\n\
function CreatePlaneMesh(name, width, depth, xOffset = -0.5, zOffset = -0.5)						\n\
{																									\n\
	local mesh = Mesh(name, false);																	\n\
	CreatePlaneMeshA(name, width, depth, xOffset, zOffset);											\n\
	return mesh;																					\n\
}																									\n\
																									\n\
";